+2006-04-12 Anders Carlsson <andersca@imendio.com>
+
+ * gdk/quartz/gdkdrawable-quartz.c:
+ (_gdk_quartz_drawable_release_context):
+ Don't flush if we're inside a begin_paint/end_paint pair.
+
+ * gdk/quartz/gdkwindow-quartz.c:
+ (gdk_window_impl_quartz_end_paint):
+ Free clip region here.
+
2006-04-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkuimanager.c (start_element_handler): Don't pass
+2006-04-12 Anders Carlsson <andersca@imendio.com>
+
+ * gdk/quartz/gdkdrawable-quartz.c:
+ (_gdk_quartz_drawable_release_context):
+ Don't flush if we're inside a begin_paint/end_paint pair.
+
+ * gdk/quartz/gdkwindow-quartz.c:
+ (gdk_window_impl_quartz_end_paint):
+ Free clip region here.
+
2006-04-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkuimanager.c (start_element_handler): Don't pass
CGContextRestoreGState (context);
CGContextSetAllowsAntialiasing (context, TRUE);
- if (impl->in_paint_rect_count == 0)
+ if (impl->in_paint_rect_count == 0 &&
+ impl->begin_paint_count == 0)
CGContextFlush (context);
[impl->view unlockFocus];
GdkWindowImplQuartz *impl = GDK_WINDOW_IMPL_QUARTZ (paintable);
impl->begin_paint_count --;
+
+ if (impl->begin_paint_count == 0)
+ {
+ gdk_region_destroy (impl->paint_clip_region);
+ impl->paint_clip_region = NULL;
+ }
}
static void